Natural language understanding is an Artificial Intelligence process of assigning meaning to natural language text. This process can be relevant to the design and operation of a chatbot or a virtual assistant, which exchanges textual messages with a user, sometimes taking actions on behalf of the user that extends beyond participation in the conversation.